<?php
require_once("../../model/class_conexionMySQL.php");
require_once("../../model/class_expediente.php");
require_once("../../model/class_persona.php");
class descargo{
	private $Id;
	private $caracter;
	private $tipo_escrito;
	private $respuesta;
	private $abogado;
	private $declaracion;
	//  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -
	public function __construct( $TipoEscrito){
		$this->Id = 0;
		$this->tipo_escrito = $TipoEscrito;
	}
	//  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -
	public function nuevo( $Autos, $Persona, $Declara, $USERID, $Respuesta = 'no', $Abogado = null, $Matricula = 0){
		$this->caracter    = expediente::getCaracter( $Autos, $Persona);
		$this->declaracion = $Declara;
		$this->respuesta   = $Respuesta;
		$this->abogado     = $Abogado;
		if( $Respuesta == 'si'){
			//	no guarda los datos del abogado si no estan en la base de daatos!!!!
			persona::vincularConExpediente( persona::getAbogadoId( $Matricula), $Autos, 6);
		}
		$consulta = new conexionMySQL();
		$Valores = $this->caracter.','.$this->tipo_escrito.',date(now()),1';
		$this->Id = $consulta->insertar( 'insert into `escritos` (`caracter`,`tipo`,`fecha`,`hojas`) values ('.$Valores.')');
		$Valores = $this->Id.',"'.$this->respuesta.'","'.$this->abogado.'","'.$this->declaracion.'"';
		$consulta->insertar( 'insert into `descargos` (`escrito`,`defensa`,`abogado`,`declaracion`) values ('.$Valores.')');
		$consulta->insertar( 'insert into `trace` (`usr`,`fech`,`tarea`,`autos`,`caracter`,`escrito`) values ('.$USERID.',now(),31,'.$Autos.','.$this->caracter.','.$this->Id.')');
		return $this->Id;
	}
	//  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -
	public function getTexto( $IDEscrito = 0){
		if( $IDEscrito){
			$this->Id = $IDEscrito;
		}
		$consulta = new conexionMySQL();
		if( $consulta->ejecutar( "select e.`tipo`,e.`caracter`,date_format(e.`fecha`,'%d')`dia`,date_format(e.`fecha`,'%m')`mes`,date_format(e.`fecha`,'%Y')`ano`,d.`defensa`,d.`abogado`,d.`declaracion` from `escritos`e,`descargos`d where e.`id`=".$this->Id." and  e.`id`=d.`escrito`")){
			if( $fila = $consulta->getResultado()){
				$this->tipo_escrito = $fila->tipo;
				$this->caracter = $fila->caracter;
				$Dia = $fila->dia;
				$Mes = $fila->mes;
				$Ano = $fila->ano;
				$this->respuesta = $fila->defensa;
				$this->abogado = $fila->abogado;
				$this->declaracion = $fila->declaracion;
			}
		}
		$Replace = array();
		if( $consulta->ejecutar( "select `expediente`,`persona` from `caracter` where `id`=".$this->caracter)){
			if( $fila = $consulta->getResultado()){
				$Replace = expediente::getInfoPrint( $fila->expediente, $fila->persona);
			}
		}
		array_push( $Replace, $this->respuesta, $this->abogado, $Dia, write_month( $Mes), $Ano, $this->declaracion);
		$Search = array('#AUTOS','#CARATULA','#FECHAACTA','#REPARTICION','#CAMPO_LEY','#NOMBRE','#DOCUMENTO','#DOMICILIOFULL','#RESPUESTA','#ABOGADO','#DIAHOY','#MESHOY','#ANOHOY','#DECLARACION');
		$Parrafos = array();
		if( $consulta->ejecutar( "select a.`texto` from `parrafos`p,`auto_texto`a where p.`autotexto`=a.`id` and p.`tipo_escrito`=".$this->tipo_escrito." order by p.`orden`")){
			while( $fila = $consulta->getResultado()){
				$Parrafos[] = utf8_decode( str_replace( $Search, $Replace, $fila->texto));
			}
		}
		return $Parrafos;
	}
}
?>